System and method for distributed input-distributed output wireless communications

ABSTRACT

A method is described comprising: transmitting a training signal from each antenna of a base station to each of a plurality of client devices, each of the client devices analyzing each training signal to generate channel characterization data, and transmitting the channel characterization data back to the base station; storing the channel characterization data for each of the plurality of client devices; receiving data to be transmitted to each of the client devices; and precoding the data using the channel characterization data associated with each respective client device to generate precoded data signals for each antenna of the base station; and transmitting the precoded data signals through each antenna of the base station to each respective client device.

BACKGROUND OF THE INVENTION

1. Field of the Invention

This invention relates generally to the field of communication systems. More particularly, the invention relates to a system and method for distributed input-distributed output wireless communications using space-time coding techniques.

2. Description of the Related Art

Space-Time Coding of Communication Signals

A relatively new development in wireless technology is known as spatial multiplexing and space-time coding. One particular type of space-time coding is called MIMO for “Multiple Input Multiple Output” because several antennas are used on each end. By using multiple antennas to send and receive, multiple independent radio waves may be transmitted at the same time within the same frequency range. The following articles provide an overview of MIMO:

IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 21, NO. 3, APRIl 2003: “From Theory to Practice: An Overview of MIMO Space-Time Coded Wireless Systems”, by David Gesbert, Member, IEEE, Mansoor Shafi, Fellow, IEEE, Da-shan Shiu, Member, IEEE, Peter J. Smith, Member, IEEE, and Ayman Naguib, Senior Member, IEEE.

IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 50, NO. 12, DECEMBER 2002: “Outdoor MIMO Wireless Channels: Models and Performance Prediction”, David Gesbert, Member, IEEE, Helmut Bölcskei, Member, IEEE, Dhananjay A. Gore, and Arogyaswami J. Paulraj, Fellow, IEEE.

Fundamentally, MIMO technology is based on the use of spatially distributed antennas for creating parallel spatial data streams within a common frequency band. The radio waves are transmitted in such a way that the individual signals can be separated at the receiver and demodulated, even though they are transmitted within the same frequency band, which can result in multiple statistically independent (i.e. effectively separate) communications channels. Thus, in contrast to standard wireless communication systems which attempt to inhibit multi-path signals (i.e., multiple signals at the same frequency delayed in time, and modified in amplitude and phase), MIMO can rely on uncorrelated or weakly-correlated multi-path signals to achieve a higher throughput and improved signal-to-noise ratio within a given frequency band. By way of example, using MIMO technology within an 802.11 g system, Airgo Networks was recently able to achieve 108 Mbps in the same spectrum where a conventional 802.11 g system can achieve only 54 Mbps (this is described on Airgo's website, currently at http://www.airgonetworks.com).

MIMO systems typically face a practical limitation of fewer than 10 antennas per device (and therefore less than 10× throughput improvement in the network) for several reasons:

1. Physical limitations: MIMO antennas on a given device must have sufficient separation between them so that each receives a statistically independent signal. Although MIMO bandwidth improvements can be seen with antenna spacing of even one-sixth wavelength (λ/6), the efficiency rapidly deteriorates as the antennas get closer, resulting in lower MIMO bandwidth multipliers. Also, as the antennas are crowded together, the antennas typically must be made smaller, which can impact bandwidth efficiency as well. Finally, with lower frequencies and longer wavelengths, the physical size of a single MIMO device can become unmanageable. An extreme example is in the HF band, where MIMO device antennas may have to be separated from each other by 10 meters or more.

2. Noise limitations. Each MIMO receiver/transmitter subsystem produces a certain level of noise. As more and more of these subsystems are placed in close proximity to each other, the noise floor increases. Meanwhile, as increasingly more distinct signals need to be distinguished from each other in a many-antenna MIMO system, an increasingly lower noise floor is required.

3. Cost and power limitations. Although there are MIMO applications where cost and power consumption are not at issue, in a typical wireless product, both cost and power consumption are critical constraints in developing a successful product. A separate RF subsystem is required for each MIMO antenna, including separate Analog-to-Digital (A/D) and Digital-to-Analog (D/A) converters. Unlike many aspects of digital systems which scale with Moore's Law, such analog-intensive subsystems typically have certain physical structural size and power requirements, and scale in cost and power linearly. So, a many-antenna MIMO device would become prohibitively expensive and power consumptive compared to a single-antenna device.

As a result of the above, most MIMO systems contemplated today are on the order of 2-to-4 antennas, resulting in a 2-to-4× increase in bandwidth, and some increase in SNR due to the diversity benefits of a multi-antenna system. Up to 10 antenna MIMO systems have been contemplated (particularly at higher microwave frequencies due to shorter wavelengths and closer antenna spacing), but much beyond that is impractical except for very specialized and cost-insensitive applications.

Virtual Antenna Arrays

One particular application of MIMO-type technology is a virtual antenna array. Such a system is proposed in a research paper presented at European Cooperation in the field of Scientific and Technical Research, EURO-COST, Barcelona, Spain, Jan. 15-17, 2003: Center for Telecommunications Research, King's College London, UK: “A step towards MIMO: Virtual Antenna Arrays”, Mischa Dohler & Hamid Aghvami.

Virtual antenna arrays, as presented in this paper, are systems of cooperative wireless devices (such as cell phones), which communicate amongst each other (if and when they are near enough to each other) on a separate communications channel than their primary communications channel to the their base station so as to operate cooperatively (e.g. if they are GSM cellular phones in the UHF band, this might be a 5 GHz Industrial Scientific and Medical (ISM) wireless band). This allows single antenna devices, for example, to potentially achieve MIMO-like increases in bandwidth by relaying information among several devices in range of each other (in addition to being in range of the base station) to operate as if they are physically one device with multiple antennas.

In practice, however, such a system is extremely difficult to implement and of limited utility. For one thing, there are now a minimum of two distinct communications paths per device that must be maintained to achieve improved throughput, with the second relaying link often of uncertain availability. Also, the devices are more expensive, physically larger, and consume more power since they have at a minimum a second communications subsystem and greater computational needs. In addition, the system is reliant on very sophisticated real-time of coordination of all devices, potentially through a variety of communications links. Finally, as the simultaneous channel utilization (e.g. the simultaneous phone call transmissions utilizing MIMO techniques) grows, the computational burden for each device grows (potentially exponentially as channel utilization increases linearly), which may very well be impractical for portable devices with tight power and size constraints.

SUMMARY OF THE INVENTION

A method is described comprising: transmitting a training signal from each antenna of a base station to each of a plurality of client devices, each of the client devices analyzing each training signal to generate channel characterization data, and transmitting the channel characterization data back to the base station; storing the channel characterization data for each of the plurality of client devices; receiving data to be transmitted to each of the client devices; and precoding the data using the channel characterization data associated with each respective client device to generate precoded data signals for each antenna of the base station; and transmitting the precoded data signals through each antenna of the base station to each respective client device.

BRIEF DESCRIPTION OF THE DRAWINGS

A better understanding of the present invention can be obtained from the following detailed description in conjunction with the drawings, in which:

FIG. 1 illustrates a prior art MIMO system.

FIG. 2 illustrates an N-antenna Base Station communicating with a plurality of Single-antenna Client Devices.

FIG. 3 illustrates a three Antenna Base Station communicating with three Single-Antenna Client Devices

FIG. 4 illustrates training signal techniques employed in one embodiment of the invention.

FIG. 5 illustrates channel characterization data transmitted from a client device to a base station according to one embodiment of the invention.

FIG. 6 illustrates a Distributed-Input Multiple-Output (“DIMO”) downstream transmission according to one embodiment of the invention.

FIG. 7 illustrates a Multiple-input Multiple Output (“MIMO”) upstream transmission according to one embodiment of the invention.

FIG. 8 illustrates a base station cycling through different client groups to allocate bandwidth according to one embodiment of the invention.

FIG. 9 illustrates a grouping of clients based on proximity according to one embodiment of the invention.

FIG. 10 illustrates embodiment of the invention employed within an NVIS system.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

In the following description, for the purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present invention. It will be apparent, however, to one skilled in the art that the present invention may be practiced without some of these specific details. In other instances, well-known structures and devices are shown in block diagram form to avoid obscuring the underlying principles of the invention.

FIG. 1 shows a prior art MIMO system with transmit antennas 104 and receive antennas 105. Such a system can achieve up to 3× the throughput that would normally be achievable in the available channel. There are a number of different approaches in which to implement the details of such a MIMO system which are described in published literature on the subject, and the following explanation describes one such approach.

Before data is transmitted in the MIMO system of FIG. 1, the channel is “characterized.” This is accomplished by initially transmitting a “training signal” from each of the transmit antennas 104 to each of the receivers 105. The training signal is generated by the coding and modulation subsystem 102, converted to analog by a D/A converter (not shown), and then converted from baseband to RF by each transmitter 103, in succession. Each receive antenna 105 coupled to its RF Receiver 106 receives each training signal and converts it to baseband. The baseband signal is converted to digital by a D/A converter (not shown), and the signal processing subsystem 107 characterizes the training signal. Each signal's characterization may include many factors including, for example, phase and amplitude relative to a reference internal to the receiver, an absolute reference, a relative reference, characteristic noise, or other factors. Each signal's characterization is typically defined as a vector that characterizes phase and amplitude changes of several aspects of the signal when it is transmitted across the channel. For example, in a quadrature amplitude modulation (“QAM”)-modulated signal the characterization might be a vector of the phase and amplitude offsets of several multipath images of the signal. As another example, in an orthogonal frequency division multiplexing (“OFDM”)-modulated signal, it might be a vector of the phase and amplitude offsets of several or all of the individual sub-signals in the OFDM spectrum.

The signal processing subsystem 107 stores the channel characterization received by each receiving antenna 105 and corresponding receiver 106. After all three transmit antennas 104 have completed their training signal transmissions, then the signal processing subsystem 107 will have stored three channel characterizations for each of three receiving antennas 105, resulting in a 3×3 matrix 108, designated as the channel characterization matrix, “H.” Each individual matrix element H_(ij) is the channel characterization (which is typically a vector, as described above) of the training signal transmission of transmit antenna 104 i as received by the receive antenna 105 j.

At this point, the signal processing subsystem 107 inverts the matrix H 108, to produce H⁻¹, and awaits transmission of actual data from transmit antennas 104. Note that various prior art MIMO techniques described in available literature, can be utilized to ensure that the H matrix 108 can be inverted.

In operation, a payload of data to be transmitted is presented to the data Input subsystem 100. It is then divided up into three parts by splitter 101 prior to being presented to coding and modulation subsystem 102. For example, if the payload is the ASCII bits for “abcdef,” it might be divided up into three sub-payloads of ASCII bits for “ad,” “be,” and “cf” by Splitter 101. Then, each of these sub-payloads is presented individually to the coding and modulation subsystem 102.

Each of the sub-payloads is individually coded by using a coding system suitable for both statistical independence of each signal and error correction capability. These include, but are not limited to Reed-Solomon coding, Viterbi coding, and Turbo Codes. Finally, each of the three coded sub-payloads is modulated using an appropriate modulation scheme for the channel. Example modulation schemes are differential phase shift key (“DPSK”) modulation, 64-QAM modulation and OFDM. It should be noted here that the diversity gains provided by MIMO allow for higher-order modulation constellations that would otherwise be feasible in a SISO (Single Input-Single Output) system utilizing the same channel. Each coded and modulated signal is then transmitted through its own antenna 104 following D/A conversion by a D/A conversion unit (not shown) and RF generation by each transmitter 103.

Assuming that adequate spatial diversity exists amongst the transmit and receive antennas, each of the receiving antennas 105 will receive a different combination of the three transmitted signals from antennas 104. Each signal is received and converted down to baseband by each RF receiver 106, and digitized by an A/D converter (not shown). If y_(n) is the signal received by the nth receive antenna 105, and x_(n) is the signal transmitted by nth transmit antenna 104, and N is noise, this can be described by the following three equations. y ₁ =x ₁ H ₁₁ +x ₂ H ₂₁ +x ₃ H ₃₁ +N y ₂ =x ₁ H ₁₂ +x ₂ H ₂₂ +x ₃ H ₃₂ +N y ₃ =x ₁ H ₁₃ +x ₂ H ₂₃ +x ₃ H ₃₃ +N

Given that this is a system of three equations with three unknowns, it is a matter of linear algebra for the signal processing subsystem 107 to derive x₁, x₂, and x₃ (assuming that N is at a low enough level to permit decoding of the signals): x ₁ =y ₁ H ⁻¹ ₁₁ +y ₂ H ⁻¹ ₁₂ +y ₃ H ⁻¹ ₁₃ x ₂ =y ₁ H ⁻¹ ₂₁ +y ₂ H ⁻¹ ₂₂ +y ₃ H ⁻¹ ₂₃ x ₃ =y ₁ H ⁻¹ ₃₁ +y ₂ H ⁻¹ ₃₂ +y ₃ H ⁻¹ ₃₃

Once the three transmitted signals x_(n) are thus derived, they are then demodulated, decoded, and error-corrected by signal processing subsystem 107 to recover the three bit streams that were originally separated out by splitter 101. These bit streams are combined in combiner unit 108, and output as a single data stream from the data output 109. Assuming the robustness of the system is able to overcome the noise impairments, the data output 109 will produce the same bit stream that was introduced to the data Input 100.

Although the prior art system just described is generally practical up to four antennas, and perhaps up to as many as 10, for the reasons described in the Background section of this disclosure, it becomes impractical with large numbers of antennas (e.g. 25, 100, or 1000).

Typically, such a prior art system is two-way, and the return path is implemented exactly the same way, but in reverse, with each side of the communications channels having both transmit and receive subsystems.

FIG. 2 illustrates one embodiment of the invention in which a Base Station 200 is configured with a Wide Area Network interface (e.g. to the Internet through a T1 or other high speed connection) 201 and is provisioned with a number (n) of antennas 202. There are a number of Client Devices 203-207, each with a single antenna, which are served wirelessly from the Base Station 200. Although for the purposes of this example it is easiest to think about such a Base Station as being located in an office environment where it is serving Client Devices 203-207 that are wireless-network equipped personal computers, this architecture will apply to a large number of applications, both indoor and outdoor, where a Base Station is serving wireless clients. For example, the Base Station could be based at a cellular phone tower, or on a television broadcast tower. In one embodiment, the Base Station 200 is positioned on the ground and is configured to transmit upward at HF frequencies (e.g., frequencies up to 24 MHz) to bounce signals off the ionosphere as described in co-pending application entitled SYSTEM AND METHOD FOR ENHANCING NEAR VERTICAL INCIDENCE SKYWAVE (“NVIS”) COMMUNICATION USING SPACE-TIME CODING, Ser. No. ______, Filed ______, which is assigned to the assignee of the present application and which is incorporated herein by reference.

Certain details associated with the Base Station 200 and Client Devices 203-207 set forth above are for the purpose of illustration only and are not required for complying with the underlying principles of the invention. For example, the Base Station may be connected to a variety of different types of wide area networks via WAN interface 201 including application-specific wide area networks such as those used for digital video distribution. Similarly, the Client Devices may be any variety of wireless data processing and/or communication devices including, but not limited to cellular phones, personal digital assistants (“PDAs”), receivers, and wireless cameras.

In one embodiment, the Base Station's n Antennas 202 are separated spatially such that each is transmitting and receiving signals which are not spatially correlated, just as if the Base Station was a prior art MIMO transceiver. As described in the Background, experiments have been done where antennas placed within λ/6 (i.e. ⅙ wavelength) apart successfully achieve an increase in bandwidth from MIMO, but generally speaking, the further apart these Base Station antennas are placed, the better the system performance, and λ/2 is a desirable minimum. Of course, the underlying principles of the invention are not limited to any particular separation between antennas.

Note that a single Base Station 200 may very well have its antennas located very far apart. For example, in the HF spectrum, the antennas may be 10 meters apart or more (e.g., in an NVIS implementation mentioned above). If 100 such antennas are used, the Base Station's antenna array could well occupy several square kilometers.

In addition to spatial diversity techniques, one embodiment of the invention polarizes the signal in order to increase the effective bandwidth of the system. Increasing channel bandwidth through polarization is a well known technique which has been employed by satellite television providers for years. Using polarization, it is possible to have multiple (e.g., three) Base Station antennas very close to each other, and still be not spatially correlated. Although conventional RF systems usually will only benefit from the diversity of two dimensions (e.g. x and y) of polarization, the architecture descried herein may further benefit from the diversity of three dimensions of polarization (x, y and z).

FIG. 3 provides additional detail of one embodiment of the Base Station 200 and Client Devices 203-207 shown in FIG. 2. For the purposes of simplicity, the Base Station 300 is shown with only three antennas 305 and only three Client Devices 306-308. It will be noted, however, that the embodiments of the invention described herein may be implemented with a virtually unlimited number of antennas 305 (i.e., limited only by available space and noise) and Client Devices 306-308.

FIG. 3 is similar to the prior art MIMO architecture shown in FIG. 1 in that both have three antennas on each sides of a communication channel. A notable difference is that in the prior art MIMO system the three antennas 105 on the right side of FIG. 1 are all a fixed distance from one another (e.g., integrated on a single device), and the received signals from each of the antennas 105 are processed together in the Signal Processing subsystem 107. By contrast, in FIG. 3, the three antennas 309 on the right side of the diagram are each coupled to a different Client Device 306-308, each of which may be distributed anywhere within range of the Base Station 305. As such, the signal that each Client Device receives is processed independently from the other two received signals in its Coding, Modulation, Signal Processing subsystem 311. Thus, in contrast to a Multiple-Input (i.e. antennas 105) Multiple-Output (i.e. antennas 104) “MIMO” system, FIG. 3 illustrates a Distributed Input (i.e. antennas 309) Multiple Output (i.e. antennas 305) system, referred to hereinafter as a “DIMO” system.

The DIMO architecture shown in FIG. 3 achieves a similar bandwidth increase as MIMO over a SISO system for a given number of transmitting antennas. However, one difference between MIMO and the particular DIMO embodiment illustrated in FIG. 3 is that, to achieve the bandwidth increase provided by multiple base station antennas, each DIMO Client Device 306-308 requires only a single receiving antenna, whereas with MIMO, each Client Device requires as least as many receiving antennas as the bandwidth multiple that is hoped to be achieved. Given that there is usually a practical limit to how many antennas can be placed on a Client Device (as explained in the Background), this typically limits MIMO systems to between four to ten antennas (and 4× to 10× bandwidth multiple). Since the Base Station 300 is typically serving many Client Devices from a fixed and powered location, is it practical to expand it to far more antennas than ten, and to separate the antennas by a suitable distance to achieve spatial diversity. As illustrated, each antenna is equipped with a transceiver 304 and a portion of the processing power of a Coding, Modulation, and Signal Processing section 303. Significantly, in this embodiment, no matter how much Base Station 300 is expanded, each Client Device 306-308 only will require one antenna 309, so the cost for an individual user Client Device 306-308 will be low, and the cost of Base Station 300 can be shared among a large base of users.

An example of how a DIMO transmission from the Base Station 300 to the Client Devices 306-308 can be accomplished is illustrated in FIGS. 4 through 6.

In one embodiment of the invention, before a DIMO transmission begins, the channel is characterized. As with a MIMO system, a training signal is transmitted (in the embodiment herein described), one-by-one, by each of the antennas 405. FIG. 4 illustrates only the first training signal transmission, but with three antennas 405 there are three separate transmissions in total. Each training signal is generated by the Coding, Modulation, and Signal Processing subsystem 403, converted to analog through a D/A converter, and transmitted as RF through each RF Transceiver 404. Various different coding, modulation and signal processing techniques may be employed including, but not limited to, those described above (e.g., Reed Solomon, Viterbi coding; QAM, DPSK, QPSK modulation, . . . etc).

Each Client Device 406-408 receives a training signal through its antenna 409 and converts the training signal to baseband by Transceiver 410. An A/D converter (not shown) converts the signal to digital where is it processed by each Coding, Modulation, and Signal Processing subsystem 411. Signal characterization logic 320 then characterizes the resulting signal (e.g., identifying phase and amplitude distortions as described above) and stores the characterization in memory. This characterization process is similar to that of prior art MIMO systems, with a notable difference being that the each client device only computes the characterization vector for its one antenna, rather than for n antennas. For example, the Coding Modulation and Signal Processing subsystem 420 of client device 406 is initialized with a known pattern of the training signal (either at the time of manufacturing, by receiving it in a transmitted message, or through another initialization process). When antenna 405 transmits the training signal with this known pattern, Coding Modulation and Signal Processing subsystem 420 uses correlation methods to find the strongest received pattern of the training signal, it stores the phase and amplitude offset, then it subtracts this pattern from the received signal. Next, it finds then second strongest received pattern that correlates to the training signal, it stores the phase and amplitude offset, then it subtracts this second strongest pattern from the received signal. This process continues until either some fixed number of phase and amplitude offsets are stored (e.g. eight), or a detectable training signal pattern drops below a given noise floor. This vector of phase/amplitude offsets becomes element H₁₁ of the vector 413. Simultaneously, Coding Modulation and Signal Processing subsystems for Client Devices 407 and 408 implement the same processing to produce their vector elements H₂₁ and H₃₁.

The memory in which the characterization is stored may be a non-volatile memory such as a Flash memory or a hard drive and/or a volatile memory such as a random access memory (e.g., SDRAM, RDAM). Moreover, different Client Devices may concurrently employ different types of memories to store the characterization information (e.g., PDA's may use Flash memory whereas notebook computers may use a hard drive). The underlying principles of the invention are not limited to any particular type of storage mechanism on the various Client Devices or the Base Station.

As mentioned above, depending on the scheme employed, since each Client Device 406408 has only one antenna, each only stores a 1×3 column 413-415 of the H matrix. FIG. 4 illustrates the stage after the first training signal transmission where the first row of 1×3 columns 413-415 has been stored with channel characterization information for the first of the three Base Station antennas 405. The remaining two columns are stored following the channel characterization of the next two training signal transmissions from the remaining two base station antennas. Note that for the sake of illustration the three training signals are transmitted at separate times. If the three training signal patterns are chosen such as not to be correlated to one another, they may be transmitted simultaneously, thereby reducing training time.

As indicated in FIG. 5, after all three pilot transmissions are complete, each Client Device 506-508 transmits back to the Base Station 500 the 1×3 column 513-515 of matrix H that it has stored. To the sake of simplicity, only one Client Device 506 is illustrated transmitting its characterization information in FIG. 5. An appropriate modulation scheme (e.g. DPSK, 64QAM, OFDM) for the channel combined with adequate error correction coding (e.g. Reed Solomon, Viterbi, and/or Turbo codes) may be employed to make sure that the Base Station 500 receives the data in the columns 513-515 accurately.

Although all three antennas 505 are shown receiving the signal in FIG. 5, it is sufficient for a single antenna and transceiver of the Base Station 500 to receive each 1×3 column 513-515 transmission. However, utilizing many or all of antennas 505 and Transceivers 504 to receive each transmission (i.e., utilizing prior art Multiple-input Single-Output (“MISO”) processing techniques in the Coding, Modulation and Signal Processing subsystem 503) may yield a better signal-to-noise ratio (“SNR”) than utilizing a single antenna 505 and Transceiver 504 under certain conditions.

As the Coding, Modulation and Signal Processing subsystem 503 of Base Station 500 receives the 1×3 column 513-515, from each Client Device 507-508, it stores it in a 3×3 H matrix 516. As with the Client Devices, the Base Station may employ various different storage technologies including, but not limited to non-volatile mass storage memories (e.g., hard drives) and/or volatile memories (e.g., SDRAM) to store the matrix 516. FIG. 5 illustrates a stage at which the Base Station 500 has received and stored the 1×3 column 513 from Client Device 509. The 1×3 columns 514 and 515 may be transmitted and stored in H matrix 516 as they are received from the remaining Client Devices, until the entire H matrix 516 is stored.

One embodiment of a DIMO transmission from a Base Station 600 to Client Devices 606-608 will now be described with reference to FIG. 6. Because each Client Device 606-608 is an independent device, typically each device is receiving a different data transmission. As such, one embodiment of a Base Station 600 includes a Router 602 communicatively positioned between the WAN Interface 601 and the Coding, Modulation and Signal Processing subsystem 603 that sources multiple data streams (formatted into bit streams) from the WAN interface 601 and routes them as separate bit streams u₁-u₃ intended for each Client Device 606-608, respectively. Various well known routing techniques may be employed by the router 602 for this purpose.

The three bit streams, u₁-u₃, shown in FIG. 6 are then routed into the Coding, Modulation and Signal Processing subsystem 603 and coded into statistically distinct, error correcting streams (e.g. using Reed Solomon, Viterbi, or Turbo Codes) and modulated using an appropriate modulation scheme for the channel (such as DPSK, 64QAM or OFDM). In addition, the embodiment illustrated in FIG. 6 includes signal preceding logic 630 for uniquely coding the signals transmitted from each of the antennas 605 based on the signal characterization matrix 616. More specifically, rather than routing each of the three coded and modulated bit streams to a separate antenna (as is done in FIG. 1), in one embodiment, the preceding logic 630 multiplies the three bit streams u₁-u₃ in FIG. 6 by the inverse of the H matrix 616, producing three new bit streams, u′₁-u′₃. The three precoded bit streams are then converted to analog by D/A converters (not shown) and transmitted as RF by Transceivers 604 and antennas 605.

Before explaining how the bit streams are received by the Client Devices 606-608, the operations performed by the precoding module 630 will be described. Similar to the MIMO example from FIG. 1 above, the coded and modulated signal for each of the three source bit streams will be designated with u_(n). In the embodiment illustrated in FIG. 6, each u_(i) contains the data from one of the three bit streams routed by the Router 602, and each such bit stream is intended for one of the three Client Devices 606-608.

However, unlike the MIMO example of FIG. 1, where each x_(i) is transmitted by each antenna 104, in the embodiment of the invention illustrated in FIG. 6, each u_(i) is received at each Client Device antenna 609 (plus whatever noise N there is in the channel). To achieve this result, the output of each of the three antennas 605 (each of which we will designate as v_(i)) is a function of u_(i) and the H matrix that characterizes the channel for each Client Device. In one embodiment, each v_(i) is calculated by the precoding logic 630 within the Coding, Modulation and Signal Processing subsystem 603 by implementing the following formulas: v ₁ =u ₁ H ⁻¹ ₁₁ +u ₂ H ⁻¹ ₁₂ +u ₃ H ⁻¹ ₁₃ v ₂ =u ₁ H ⁻¹ ₂₁ +u ₂ H ⁻¹ ₂₂ +u ₃ H ⁻¹ ₂₃ v ₃ =u ₁ H ⁻¹ ₃₁ +u ₂ H ⁻¹ ₃₂ +u ₃ H ⁻¹ ₃₃

Thus, unlike MIMO, where each x_(i) is calculated at the receiver after the signals have been transformed by the channel, the embodiments of the invention described herein solve for each v_(i) at the transmitter before the signals have been transformed by the channel. Each antenna 609 receives u_(i) already separated from the other u_(n-1) bit streams intended for the other antennas 609. Each Transceiver 610 converts each received signal to baseband, where it is digitized by an A/D converter (now shown), and each Coding, Modulation and Signal Processing subsystem 611, demodulates and decodes the x_(i) bit stream intended for it, and sends its bit stream to a Data Interface 612 to be used by the Client Device (e.g., by an application on the client device).

The embodiments of the invention described herein may be implemented using a variety of different coding and modulation schemes. For example, in an OFDM implementation, where the frequency spectrum is separated into a plurality of sub-bands, the techniques described herein may be employed to characterize each individual sub-band. As mentioned above, however, the underlying principles of the invention are not limited to any particular modulation scheme.

If the Client Devices 606-608 are portable data processing devices such as PDAs, notebook computers, and/or wireless telephones the channel characterization may change frequently as the Client Devices may move from one location to another. As such, in one embodiment of the invention, the channel characterization matrix 616 at the Base Station is continually updated. In one embodiment, the Base Station 600 periodically (e.g., every 250 milliseconds) sends out a new training signal to each Client Device, and each Client Device continually transmits its channel characterization vector back to the Base Station 600 to ensure that the channel characterization remains accurate (e.g. if the environment changes so as to affect the channel or if a Client Device moves). In one embodiment, the training signal is interleaved within the actual data signal sent to each client device. Typically, the training signals are much lower bandwidth than the data signals, so this would have little impact on the overall throughput of the system. Accordingly, in this embodiment, the channel characterization matrix 616 may be updated continuously as the Base Station actively communicates with each Client Device, thereby maintaining an accurate channel characterization as the Client Devices move from one location to the next or if the environment changes so as to affect the channel.

One embodiment of the invention illustrated in FIG. 7 employs MIMO techniques to improve the upstream communication channel (i.e., the channel from the Client Devices 706-708 to the Base Station 700). In this embodiment, the channel from each of the Client Devices is continually analyzed and characterized by upstream channel characterization logic 741 within the Base Station. More specifically, each of the Client Devices 706-708 transmits a training signal to the Base Station 700 which the channel characterization logic 741 analyzes (e.g., as in a typical MIMO system) to generate an N×M channel characterization matrix 741, where N is the number of Client Devices and M is the number of antennas employed by the Base Station. The embodiment illustrated in FIG. 7 employs three antennas 705 at the Base Station and three Client Devices 706-608, resulting in a 3×3 channel characterization matrix 741 stored at the Base Station 700. The MIMO upstream transmission illustrated in FIG. 7 may be used by the Client Devices both for transmitting data back to the Base Station 700, and for transmitting channel characterization vectors back to the Base Station 700 as illustrated in FIG. 5. But unlike the embodiment illustrated in FIG. 5 in which each Client Device's channel characterization vector is transmitted at a separate time, the method shown in FIG. 7 allows for the simultaneous transmission of channel characterization vectors from multiple Client Devices back to the Base Station 700, thereby dramatically reducing the channel characterization vectors' impact on return channel throughput.

As mentioned above, each signal's characterization may include many factors including, for example, phase and amplitude relative to a reference internal to the receiver, an absolute reference, a relative reference, characteristic noise, or other factors. For example, in a quadrature amplitude modulation (“QAM”)-modulated signal the characterization might be a vector of the phase and amplitude offsets of several multipath images of the signal. As another example, in an orthogonal frequency division multiplexing (“OFDM”)-modulated signal, it might be a vector of the phase and amplitude offsets of several or all of the individual sub-signals in the OFDM spectrum. The training signal may be generated by each Client Device's coding and modulation subsystem 711, converted to analog by a D/A converter (not shown), and then converted from baseband to RF by each Client Device's transmitter 709. In one embodiment, in order to ensure that the training signals are synchronized, Client Devices only transmit training signals when requested by the Base Station (e.g., in a round robin manner). In addition, training signals may be interleaved within or transmitted concurrently with the actual data signal sent from each client device. Thus, even if the Client Devices 706-708 are mobile, the training signals may be continuously transmitted and analyzed by the upstream channel characterization logic 741, thereby ensuring that the channel characterization matrix 741 remains up-to-date.

The total channel bandwidth supported by the foregoing embodiments of the invention may be defined as min (N, M) where N is the number of Client Devices and M is the number of Base Station antennas. That is, the capacity is limited by the number of antennas on either the Base Station side or the Client side. As such, one embodiment of the invention employs synchronization techniques to ensure that no more than min (N, M) antennas are transmitting/receiving at a given time.

In a typical scenario, the number of antennas 705 on the Base Station 700 will be less than the number of Client Devices 706-708. An exemplary scenario is illustrated in FIG. 8 which shows five Client Devices 804-808 communicating with a base station having three antennas 802. In this embodiment, after determining the total number of Client Devices 804-808, and collecting the necessary channel characterization information (e.g., as described above), the Base Station 800 chooses a first group of three clients 810 with which to communicate (three clients in the example because min (N, M)=3). After communicating with the first group of clients 810 for a designated period of time, the Base Station then selects another group of three clients 811 with which to communicate. To distribute the communication channel evenly, the Base Station 800 selects the two Client Devices 807, 808 which were not included in the first group. In addition, because an extra antenna is available, the Base Station 800 selects an additional client device 806 included in the first group. In one embodiment, the Base Station 800 cycles between groups of clients in this manner such that each client is effectively allocated the same amount of bandwidth over time. For example, to allocate bandwidth evenly, the Base Station may subsequently select any combination of three Client Devices which excludes Client Device 806 (i.e., because Client Device 806 was engaged in communication with the Base Station for the first two cycles).

In one embodiment, in addition to standard data communications, the Base Station may employ the foregoing techniques to transmit training signals to each of the Client Devices and receive training signals and signal characterization data from each of the Client Devices.

In one embodiment, certain Client Devices or groups of client devices may be allocated different levels of bandwidth. For example, Client Devices may be prioritized such that relatively higher priority Client Devices may be guaranteed more communication cycles (i.e., more bandwidth) than relatively lower priority client devices. The “priority” of a Client Device may be selected based on a number of variables including, for example, the designated level of a user's subscription to the wireless service (e.g., user's may be willing to pay more for additional bandwidth) and/or the type of data being communicated to/from the Client Device (e.g., real-time communication such as telephony audio and video may take priority over non-real time communication such as email).

In one embodiment of the Base Station dynamically allocates bandwidth based on the Current Load required by each Client Device. For example, if Client Device 804 is streaming live video and the other devices 805-808 are performing non-real time functions such as email, then the Base Station 800 may allocate relatively more bandwidth to this client 804. It should be noted, however, that the underlying principles of the invention are not limited to any particular bandwidth allocation technique.

As illustrated in FIG. 9, two Client Devices 907, 908 may be so close in proximity, that the channel characterization for the clients is effectively the same. As a result, the Base Station will receive and store effectively equivalent channel characterization vectors for the two Client Devices 907, 908 and therefore will not be able to create unique, spatially distributed signals for each Client Device. Accordingly, in one embodiment, the Base Station will ensure that any two or more Client Devices which are in close proximity to one another are allocated to different groups. In FIG. 9, for example, the Base Station 900 first communicates with a first group 910 of Client Devices 904, 905 and 908; and then with a second group 911 of Client Devices 905, 906, 907, ensuring that Client Devices 907 and 908 are in different groups.

Alternatively, in one embodiment, the Base Station 900 communicates with both Client Devices 907 and 908 concurrently, but multiplexes the communication channel using known channel multiplexing techniques. For example, the Base Station may employ time division multiplexing (“TDM”), frequency division multiplexing (“FDM”) or code division multiple access (“CDMA”) techniques to divide the single, spatially-correlated signal between Client Devices 907 and 908.

Although each Client Device described above is equipped with a single antenna, the underlying principles of the invention may be employed using Client Devices with multiple antennas to increase throughput. For example, when used on the wireless systems described above, a client with 2 antennas will realize a 2× increase in throughput, a client with 3 antennas will realize a 3× increase in throughput, and so on (i.e., assuming that the spatial and angular separation between the antennas is sufficient). The Base Station may apply the same general rules when cycling through Client Devices with multiple antennas. For example, it may treat each antenna as a separate client and allocate bandwidth to that “client” as it would any other client (e.g., ensuring that each client is provided with an adequate or equivalent period of communication).

As mentioned above, one embodiment of the invention employs the DIMO and/or MIMO signal transmission techniques described above to increase the signal-to-noise ratio and transmission bandwidth within a Near Vertical Incidence Skywave (“NVIS”) system. Referring to FIG. 10, in one embodiment of the invention, a first NVIS station 1001 equipped with a matrix of N antennas 1002 is configured to communicate with M client devices 1004. The NVIS antennas 1002 and antennas of the various client devices 1004 transmit signals upward to within about 15 degrees of vertical in order to achieve the desired NVIS and minimize ground wave interference effects. In one embodiment, the antennas 1002 and client devices 1004, support multiple independent data streams 1006 using the various DIMO and MIMO techniques described above at a designated frequency within the NVIS spectrum (e.g., at a carrier frequency at or below 23 MHz, but typically below 10 MHz), thereby significantly increasing the bandwidth at the designated frequency (i.e., by a factor proportional to the number of statistically independent data streams).

The NVIS antennas serving a given station may be physically very far apart from each other. Given the long wavelengths below 10 MHz and the long distance traveled for the signals (as much as 300 miles round trip), physical separation of the antennas by 100s of yards, and even miles, can provide advantages in diversity. In such situations, the individual antenna signals may be brought back to a centralized location to be processed using conventional wired or wireless communications systems. Alternatively, each antenna can have a local facility to process its signals, then use conventional wired or wireless communications systems to communicate the data back to a centralized location. In one embodiment of the invention, NVIS Station 1001 has a broadband link 1015 to the Internet 1010 (or other wide area network), thereby providing the client devices 1003 with remote, high speed, wireless network access.

Embodiments of the invention may include various steps as set forth above. The steps may be embodied in machine-executable instructions which cause a general-purpose or special-purpose processor to perform certain steps. For example, the various components within the Base Stations and Client Devices described above may be implemented as software executed on a general purpose or special purpose processor. To avoid obscuring the pertinent aspects of the invention, various well known personal computer components such as computer memory, hard drive, input devices, . . . etc, have been left out of the figures.

Alternatively, in one embodiment, the various functional modules illustrated herein and the associated steps may be performed by specific hardware components that contain hardwired logic for performing the steps, such as an application-specific integrated circuit (“ASIC”) or by any combination of programmed computer components and custom hardware components.

In one embodiment, certain modules such as the Coding, Modulation and Signal Processing Logic 903 described above may be implemented on a programmable digital signal processor (“DSP”) (or group of DSPs) such as a DSP using a Texas Instruments' TMS320x architecture (e.g., a TMS320C6000, TMS320C5000, . . . etc). The DSP in this embodiment may be embedded within an add-on card to a personal computer such as, for example, a PCI card. Of course, a variety of different DSP architectures may be used while still complying with the underlying principles of the invention.

Elements of the present invention may also be provided as a machine-readable medium for storing the machine-executable instructions. The machine-readable medium may include, but is not limited to, flash memory, optical disks, CD-ROMs, DVD ROMs, RAMs, EPROMs, EEPROMs, magnetic or optical cards, propagation media or other type of machine-readable media suitable for storing electronic instructions. For example, the present invention may be downloaded as a computer program which may be transferred from a remote computer (e.g., a server) to a requesting computer (e.g., a client) by way of data signals embodied in a carrier wave or other propagation medium via a communication link (e.g., a modem or network connection).

Throughout the foregoing description, for the purposes of explanation, numerous specific details were set forth in order to provide a thorough understanding of the present system and method. It will be apparent, however, to one skilled in the art that the system and method may be practiced without some of these specific details. Accordingly, the scope and spirit of the present invention should be judged in terms of the claims which follow. 

1. A method comprising: transmitting a training signal from each antenna of a base station to each of a plurality of client devices, each of the client devices analyzing each training signal to generate channel characterization data, and transmitting the channel characterization data back to the base station; storing the channel characterization data for each of the plurality of client devices; receiving data to be transmitted to each of the client devices; and preceding the data using the channel characterization data associated with each respective client device to generate precoded data signals for each antenna of the base station; and transmitting the precoded data signals through each antenna of the base station to each respective client device.
 2. The method of claim 1, further comprising: transmitting a training signal through each antenna of the base station to each client device; receiving channel characterization data for each client device, the channel characterization data for each client device having been generated by each client device having independently processed and characterized the training signal from each antenna of the base station; and storing the channel characterization data for each client device.
 3. The method of claim 2, further comprising: periodically sending a new training signal through each antenna of the base station to each client device; and receiving new channel characterization data for each client device, the channel characterization data for each client device having been generated by each client device having independently processed and characterized the new training signal from each antenna of the base station; and storing the new channel characterization data for each client device.
 4. The method of claim 3, wherein the new training signal is interleaved within precoded data signals.
 5. The method of claim 1, further comprising: receiving a training signal through each antenna of the base station from each client device; characterizing the training signals to generate the channel characterization data, the channel characterization data associated with each client device and each antenna of the base station; and storing the channel characterization data.
 6. The method of claim 5, further comprising: requesting the training signal from each client device.
 7. The method of claim 5, further comprising: continuously receiving a new training signal from each client device.
 8. The method of claim 1, wherein transmitting each respective precoded data signal comprises: a first transmission to a first selected group within the plurality of client devices; and a second transmission to a second selected group within the plurality of client devices, the first and second selected group defined such as to allocate bandwidth in a desired fashion.
 9. The method of claim 8, wherein the desired fashion is any combination selected from the group consisting of allocating bandwidth evenly, allocating bandwidth according to priority, allocating bandwidth based on a current load required by a client device, and allocating bandwidth to avoid multiple client devices in close proximity to each other.
 10. The method of claim 1, wherein the base station communicates with two client devices concurrently using multiplexing techniques.
 11. The method of claim 1, wherein a client device has multiple antennas, each antenna treated as a separate client device.
 12. The method of claim 1, further comprising: routing the input data into separate bit streams to respective antennas of the base station, each separate bit stream intended for a respective client device; storing the channel characterization data as a channel characterization matrix; and multiplying each separate bit stream by the inverse of the channel characterization matrix to generate the precoded data signals.
 13. A method comprising: receiving precoded data signals at a client device, each precoded data signal transmitted from a respective antenna of a plurality of antennas of a base station to each of a plurality of client devices, each precoded data signal based on input data and channel characterization data associated with each client device and each respective antenna of the base station.
 14. The method of claim 13, further comprising: receiving training signals from each of the plurality of antennas of the base station; processing the training signals; characterizing the training signals to generate the channel characterization data for the client device; storing the channel characterization data for the client device; transmitting the channel characterization data for the client device to each antenna of the base station, the base station generating the respective precoded data signals using the channel characterization data for the device.
 15. The method of claim 14, wherein the client device has a second antenna, the second antenna being treated as a separate client device receiving respective precoded data signals and training signals.
 16. The method of claim 13, further comprising: transmitting a training signal to the base station, the base station processing and characterizing the training signal to generate the channel characterization data.
 17. A system comprising: a plurality of client devices; a base station; and a plurality of antennas of the base station, wherein each antenna of the base station transmits a respective precoded data signal to each client device, the respective precoded data signal generated by precoding input data using channel characterization data associated with each respective client device and each respective antenna of the base station.
 18. The system of claim 17, wherein the channel characterization data is generated by each client device having independently processed and characterized a training signal transmitted by each antenna of the base station to each client device.
 19. The system of claim 17, wherein the channel characterization data is generated by the base station having processed and characterized a training signal transmitted from each client device to each antenna of the base station.
 20. The system of claim 17, wherein synchronization techniques are employed to ensure less than a certain number of transmissions and receptions at a given time, such as to not exceed total channel bandwidth. 